#include <iostream>
#include <functional>

using namespace std;

int Max(int a, int b)
{
    return a > b ? a : b;
}

int Min(int a, int b)
{
    return a > b ? b : a;
}

class A
{
public:
    void setCallback(function<int(int, int)> func) { callback = func; }
    void startCallback() { cout << callback(7, 17) << endl; }
private:
    function<int(int, int)> callback;
};


int main()
{
    A a;
    a.setCallback(Max);
    a.startCallback();

    return 0;
}